package com.library.mapper;


import com.library.domain.BoBorrow;

import java.util.List;

/**
 * 图书借阅 数据层
 *
 * @author null
 * @date 2020-01-18
 */
public interface BoBorrowMapper {
    /**
     * 查询图书借阅信息
     *
     * @param id 图书借阅ID
     * @return 图书借阅信息
     */
    BoBorrow selectBoBorrowById(Long id);

    /**
     * 查询图书借阅列表
     *
     * @param boBorrow 图书借阅信息
     * @return 图书借阅集合
     */
    List<BoBorrow> selectBoBorrowList(BoBorrow boBorrow);

    /**
     * 查询会员借书记录
     *
     * @param membersId 会员ID
     * @return
     */
    List<BoBorrow> selectBorrowByMembersId(Long membersId);

    /**
     * 新增图书借阅
     *
     * @param boBorrow 图书借阅信息
     * @return 结果
     */
    int insertBoBorrow(BoBorrow boBorrow);

    /**
     * 修改图书借阅
     *
     * @param boBorrow 图书借阅信息
     * @return 结果
     */
    int updateBoBorrow(BoBorrow boBorrow);

    /**
     * 删除图书借阅
     *
     * @param id 图书借阅ID
     * @return 结果
     */
    int deleteBoBorrowById(Integer id);

    /**
     * 批量删除图书借阅
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    int deleteBoBorrowByIds(String[] ids);

    /**
     * 根据用户ID和图书ID查询未归还的图书信息
     *
     * @param boBorrow 借阅实体类
     * @return
     */
    BoBorrow selectBoBorrowByMembersIdAndBookId(BoBorrow boBorrow);

    /**
     * 根据图书查询借阅时间
     *
     * @param bookId 图书Id
     * @return
     */
    BoBorrow selectBoBorrowByBookIdAndStatus(Long bookId);
}